import os


class ConfigManager(object):
    # 项目目录
    BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

    # 报告目录
    REPORT_PATH = os.path.join(BASE_DIR, 'report')

    # 测试用例
    TEST_SUITES = os.path.join(BASE_DIR, "scripts")

    # 测试数据
    TEST_DATA = os.path.join(BASE_DIR, "data")

    # HAR Path
    HAR_PATH = os.path.join(BASE_DIR, "hars")

    # API Path
    API_PATH = os.path.join(BASE_DIR, "api")

    @property
    def log_path(self):
        # 日志目录
        log_path = os.path.join(self.BASE_DIR, 'logs')
        if not os.path.exists(log_path):
            os.makedirs(log_path)
        return os.path.join(log_path)

    @property
    def report_path(self):
        """报告文件"""
        _path = self.REPORT_PATH
        if not os.path.exists(_path):
            os.makedirs(_path)
        return os.path.join(_path)

    @property
    def data_path(self):
        """数据文件"""
        _path = self.TEST_DATA
        if not os.path.exists(_path):
            os.makedirs(_path)
        return _path


config = ConfigManager()
